package com.ruoyi.web.xxj.mapper;

import java.util.List;

import com.ruoyi.web.xxj.domain.ClassOrder;
import com.ruoyi.web.xxj.domain.vo.ClassOrderVo;
import com.ruoyi.web.xxj.domain.vo.EachMonthCountObj;

/**
 * 课程订单Mapper接口
 *
 * @author ruoyi
 * @date 2024-01-24
 */
public interface ClassOrderMapper {
    /**
     * 查询课程订单
     *
     * @param id 课程订单主键
     * @return 课程订单
     */
	public ClassOrderVo selectClassOrderById(Long id);

    /**
     * 查询课程订单
     *
     * @param orderNo 课程订单订单号
     * @return 课程订单
     */
    public ClassOrderVo selectClassOrderByOrderNo(String orderNo);

    /**
     * 查询课程订单列表
     *
     * @param classOrder 课程订单
     * @return 课程订单集合
     */
    public List<ClassOrderVo> selectClassOrderList(ClassOrder classOrder);

    /**
     * 新增课程订单
     *
     * @param classOrder 课程订单
     * @return 结果
     */
    public int insertClassOrder(ClassOrder classOrder);

    /**
     * 修改课程订单
     *
     * @param classOrder 课程订单
     * @return 结果
     */
    public int updateClassOrder(ClassOrder classOrder);

    /**
     * 删除课程订单
     *
     * @param id 课程订单主键
     * @return 结果
     */
    public int deleteClassOrderById(Long id);

    /**
     * 批量删除课程订单
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteClassOrderByIds(Long[] ids);

    public Integer getToYearClassOrderCount();

    public List<EachMonthCountObj> getEachMonthClassOrderNum();
}
